﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using SistemaVarejo.Model;
using SistemaVarejo.DAO;
using SistemaVarejo.rn;

namespace SistemaVarejo.View
{
    public partial class frm_produto : Form
    {
        public frm_produto()
        {
            InitializeComponent();
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            Cancelar();
        }
        private void Cancelar()
        {
            txtCodigo.Clear();
            txtDescricao.Clear();
            txtNome.Clear();
            txtQuantidade.Clear();
            txtValor.Clear();
        }

        private void btnGravar_Click(object sender, EventArgs e)
        {

            txtNome.Focus();
            Produto p = new Produto();
            do
            {
                if ((txtNome.Text == "") || (txtQuantidade.Text == "") || (txtValor.Text == "") || (txtDescricao.Text == ""))
                {
                    MessageBox.Show("Preencha os campos vazios!");
                    break;
                }
                else
                {
                    p.nome = txtNome.Text;
                    p.valor = float.Parse(txtValor.Text);

                    p.quantidade = int.Parse(txtQuantidade.Text);
                    p.descricao = txtDescricao.Text;
                    if (ProdutoDAO.incluir(p))
                    {
                        MessageBox.Show("Produto cadastrado com sucesso");
                    }
                    else
                    {
                        MessageBox.Show("Produto não pode ser cadastrado");
                    }
                }
            } while ((txtNome.Text == "") || (txtQuantidade.Text == "") || (txtValor.Text == "") || (txtDescricao.Text == ""));
        }

        private void btnVisualizarProdutos_Click(object sender, EventArgs e)
        {
            //gridProdutos gp = new gridProdutos();
            //gp.ShowDialog();
            frm_busca_produto buscaProduto = new frm_busca_produto(this);
            buscaProduto.ShowDialog();
        }

        private void frm_produto_Load(object sender, EventArgs e)
        {
            btnBuscar.Enabled = false;
            Produto p = new Produto();
            p = ProdutoDAO.getCodigo();

            int id = p.Id + 1;
            txtCodigo.Text = id.ToString();
            this.Refresh();   
        }

        private void frm_produto_TextChanged(object sender, EventArgs e)
        {

        }

        private void btnBuscar_Click(object sender, EventArgs e)
        {
            Produto p = new Produto();
            
            p.Id = int.Parse(txtCodigo.Text);
            p.nome = txtNome.Text;
            p.valor = float.Parse(txtValor.Text);
            p.quantidade = int.Parse(txtQuantidade.Text);
            p.descricao = txtDescricao.Text;
            ProdutoDAO.EditaProduto(p);

        }

        public void PreencheProduto(Produto p) {
            txtCodigo.Text = p.Id.ToString();
            txtNome.Text = p.nome;
            txtValor.Text = p.valor.ToString();
            txtQuantidade.Text = p.quantidade.ToString();
            txtDescricao.Text = p.descricao;
            btnBuscar.Enabled = true;
            
        }



    }
}
